/**
 * 
 * @param {Array} allRoutes 项目所有的路由
 * @param {Array} menuList 服务器返回的菜单的名字/路由名字
 * @returns {Array} 计算好的用户路由
 */

function recursionRoutes(allRoutes=[],menuList=[]){
    let userRoutes = [];
    // console.log(allRoutes)
    //遍历allRoutes对比的条件就是 找menuList中和allRoutes对象中的meta属性中的title相同的选项，如果相同，说明需要这个route对象，那就添加到数组中userRoutes
    allRoutes.forEach(route =>{
        // console.log(route)
        menuList.forEach(item=>{
            // console.log(item)
            if(route.meta?.title === item.title){
                route.meta.name = item.name;//将菜单名字映射到路由对象中
                if(route.children && route.children.length>0){
                    route.children = recursionRoutes(route.children,item.children)
                }
                userRoutes.push(route)
            }
        })
    })

    return userRoutes
}

export default recursionRoutes